A virtual machine (VM) is a portion of software that, when executed on appropriate hardware, creates an environment allowing the virtualization of an actual physical computer system (e.g., a server, a mainframe computer, etc.). The actual physical computer system is typically referred to as a “host machine,” (or “host”) and the operating system of the host machine is typically referred to as the “host operating system.” The host allocates a certain amount of its resources to each of the virtual machines. Each virtual machine is then able to use the allocated resources to execute applications, including operating systems (referred to as guest operating systems). Typically, software on the host machine known as a “hypervisor” (or a “virtual machine monitor”) manages the execution of one or more virtual machines, providing a variety of functions such as virtualizing and allocating resources, context switching among virtual machines, etc.
A host controller in the virtualization system may include a virtualization management system, or “virtualization manager,” to manage the allocation of resources from host servers to VMs, monitor the status of the VMs, as well as the progress of commands and processes being executed by the VMs, migrate VMs from one physical host to another, and generally manage operations in the system. Management functionality is only available for those VMs created under direction of the virtualization manager.